package com.ycg.blog.service;

import com.ycg.blog.common.R;
import com.ycg.blog.pojo.Category;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ycg.blog.pojo.vo.CategoryVo;
import com.ycg.blog.pojo.vo.SimpleArticleVo;

import java.util.List;

/**
* @author lenovo
* @description 针对表【blog_category(分类信息)】的数据库操作Service
* @createDate 2024-03-02 12:05:04
*/
public interface CategoryService extends IService<Category> {

    /**
     * 获取分类信息
     * @return
     */
    R<List<CategoryVo>> getCategoryList();

    /**
     * 添加分类
     * @param category
     * @return
     */
    R<String> updateCategories(Category category);

    /**
     * 根据分类id获取文章简要信息
     * @param categoryId
     * @return
     */
    R<List<SimpleArticleVo>> getSimpleArticlesByCategoryId(Integer categoryId);

    /**
     * 根据分类id修改分类名称
     * @param categoryId
     * @param newName
     * @return
     */
    R<String> updateCategoryName(Integer categoryId, String newName);

    /**
     * 新增分类
     * @param name
     * @param parentId
     * @return
     */
    R<String> addCategories(String name, Integer parentId);
}
